//引入axios
import axios from "axios"

//创建axios实例
const requestMock = axios.create({
    baseURL: "/api",
    timeout: 5000,
})

//设置请求拦截器
requestMock.interceptors.request.use((config) => {
    return config
})

//设置响应拦截器
requestMock.interceptors.response.use((response) => {
    // 从响应的数据中解构code和message
    const {
        code,
        message
    } = response.data
    // 如果code的值是200，说明成功的响应到我们想要的数据，然后返回一个过滤后的数据
    if (code === 200) {
        return response.data.data
    }
    //如果code的值不是200，说明不是我们想要的数据，则返回一个失败的promise，值为响应信息
    return Promise.reject({
        message: message
    })

}, (error) => {
    // 响应失败则返回一个失败的promise，值为失败信息
    return Promise.reject(error)
})

// 暴露request
export default requestMock